package com.alpha.ejb.session.project;

import java.util.List;

import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

import com.alpha.tables.Project;

/**
 * Session Bean implementation class ProjectManager
 */
@Stateless
public class ProjectManager implements ProjectManagerRemote {

	@PersistenceContext		
	EntityManager m_GestionnaireEntites;
	
    /**
     * Default constructor. 
     */
    public ProjectManager() {
        // TODO Auto-generated constructor stub
    }

	/**
	 * Ajoute un projet dans la base de données
	 */
	public void AjouterProjet(Project p_Project) {
		m_GestionnaireEntites.persist(p_Project);
	}

	/**
	 * Retourne la liste des projets
	 */
	@SuppressWarnings("unchecked") // Transtypage
	public List<Project> GetProjects() {
    	return (List<Project>)m_GestionnaireEntites.createNamedQuery("FindAllProject").getResultList();
	}

	/**
	 * Retourne le projet demandé
	 */
	public Project GetProjectById(int idproject) {
    	return (Project)m_GestionnaireEntites.createNamedQuery("FindProjectById").setParameter("p_Id", idproject).getSingleResult();
	}
}
